package nc.itf.so.m30.self;

import java.util.List;
import java.util.Map;

import nc.ui.querytemplate.querytree.IQueryScheme;
import nc.vo.pub.AggregatedValueObject;
import nc.vo.pub.BusinessException;
import nc.vo.pubapp.pattern.model.entity.bill.AbstractBill;
import nc.vo.so.m30.entity.SaleOrderVO;
import nc.vo.so.m30.entity.SaleOrderViewVO;

public abstract interface ISaleOrderMaintain
{
  public abstract SaleOrderVO[] querySaleorder(String[] paramArrayOfString)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrder(String paramString)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrderFor21(IQueryScheme paramIQueryScheme)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrderFor5801(IQueryScheme paramIQueryScheme)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrderFor30Return(IQueryScheme paramIQueryScheme)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrderFor32(IQueryScheme paramIQueryScheme)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrderFor4331(IQueryScheme paramIQueryScheme)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrderFor4816(IQueryScheme paramIQueryScheme)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrderFor4C(IQueryScheme paramIQueryScheme)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrderForCoop(IQueryScheme paramIQueryScheme)
    throws BusinessException;
  
  public abstract SaleOrderVO[] querySaleOrderForCoop(IQueryScheme paramIQueryScheme, String paramString)
    throws BusinessException;
  
  public abstract SaleOrderViewVO[] querySaleorderForTbb(String paramString)
    throws BusinessException;
  
  public abstract AggregatedValueObject querySaleOrderFor30Revise(Class<? extends AbstractBill> paramClass, String paramString)
    throws BusinessException;
  
  public abstract Map getSaleOrderInfoByBodyId(String pk_SaleOrderBID );
  
  public abstract  void executeInsertDataTOMDDB(String sql);
 
  
  public abstract Map<String,String> getZJPTIDAndStatusMap(String[] povoIds);
  
  public abstract void updateZJPTStatusByIds(String[] ids);
  
  public abstract String getDeptCodeByPK(String deptPk);
  
  public abstract Map<String,String> baseDefineQuery(String sql);
  
  public abstract Map<String,String> querySpecialFeaturesByCFFileId(String cffileid);
  
  public abstract String getMPSPloToMESParam();
  
  public abstract List<Map<String,String>> queryPJBOMListFromMIDByCode(String code);
  
  public abstract String getPKMaterialByCode(String code);
}

